<!DOCTYPE html>
<html>
<head>
	<meta charset='utf-8'>
	<title>Latest Discussion</title>

<style type="text/css">
* {margin:0px 0px;padding:0px 0px;}
body {
font:normal 11px Tahoma,Arial,Sans-Serif;
background-color:transparent;
}
nav {margin:5px 0;text-align:center;}
nav a {color:#5687B8;;}
ul.cm-outer {
font:11px/14px Tahoma,Verdana,Arial,Sans-Serif;
color:white;
}
ul.cm-outer img {
width:32px;
height:auto;
border:none;
}
ul.cm-outer li {
background-color:#444;
border:1px solid #555;
border-bottom:none;
padding:0px;
margin:0px 0px;
position:relative;
list-style:none;
}
ul.cm-outer li:last-child {border-bottom:1px solid #555 !important;}
ul.cm-outer li.recent-comment-admin {}
ul.cm-outer .face {
position:absolute;
top:0px;
bottom:0px;
left:0px;
width:32px;
padding:7px 7px;	
border-right:1px solid #555;
}
ul.cm-outer .post {
margin-left:48px;
padding:7px 7px;
}

ul.cm-outer .post i[rel="pre"] {
display:block;
word-wrap:normal;
white-space:pre;
overflow:auto;
background-color:#002B36;
padding:5px 7px;
font:normal 10px Tahoma,Verdana,Arial,Sans-Serif !important;
font-style:normal;
color:#999;
}
ul.cm-outer .post i[rel="code"] {
font:normal 11px Monaco,Monospace !important;
font-style:normal;
}

ul.cm-outer strong {
display:block;
margin-bottom:5px;
color:#777;
}
ul.cm-outer a {text-decoration:none;color:#5687B8;}
ul.cm-outer a:hover {color:#eee;text-decoration:underline;}
.recent-comment-body {
background-color:#3c3c3c;
padding:10px;
word-wrap:break-word;
overflow:hidden;
}
ul.cm-outer li div.recent-comment-admin {
position:relative;
border-left:2px solid #900;
}

</style>
<script type="text/javascript">
// Recent Comments blogger gadget by MS-potilas 2011
// see http://yabtb.blogspot.com/2011/11/return-of-better-recent-comments-gadget.html
var numRecentComments  = 47,
    numPerPost         = 47, // max comments per post (to try) or 0
    maxCommentChars    = 2000,
    maxPostTitleChars  = 0, // if 0, use full post title
    txtWrote           = '',
    txtMore            = 'Selengkapnya',
    txtTooltip         = '[title] - [date MM/dd/yy hh:mm]',
    txtAnonymous       = '', // empty, or Anonymous user name localized
// Variables [xxx] in texts:
// supports [title], [user], [date], [time], [datetime], [date format]
// format supports: yyyy=long year, yy=short year, MM=month(01-12), dd=monthday, hh=hour, mm=min, ss=sec
    getTitles          = true; // false faster
    trueAvatars        = true; // false faster
var urlMyAvatar        = 'http://2.bp.blogspot.com/-PI8Zuo2jM4o/T2vhCXeHo5I/AAAAAAAACXQ/iQU5joOKp4o/s1600/my-comment-author.png', // can be empty (then it is fetched) or url to image
    urlMyProfile       = 'http://www.blogger.com/profile/07846603580605750971', // set if you have no profile gadget on page
//
    urlAnoAvatar       = 'http://www.gravatar.com/avatar/00000000000000000000000000000000?d=mm&s=16',
    maxResultsPosts    = "&max-results=99999", // or for example "&max-results=100"
    maxResultsComments = "&max-results=99999", // or for example "&max-results=300"
// CONFIG END
    urlToTitle = {};

function replaceVars(text, user, title, date) {
	text = text.replace('[user]', user);
	text = text.replace('[date]', date.toLocaleDateString());
	text = text.replace('[datetime]', date.toLocaleString());
	text = text.replace('[time]', date.toLocaleTimeString());
	text = text.replace('[title]', title.replace(/\"/g, '&quot;'));
	var i = text.indexOf("[date ");
	if (i > -1) {
		var format = /\[date\s+(.+?)\]/.exec(text)[1];
		if (format != '') {
			var txtDate = format.replace(/yyyy/i, date.getFullYear());
			txtDate = txtDate.replace(/yy/i, date.getFullYear().toString().slice(-2));
			txtDate = txtDate.replace("MM", String("0" + (date.getMonth() + 1)).slice(-2));
			txtDate = txtDate.replace("mm", String("0" + date.getMinutes()).slice(-2));
			txtDate = txtDate.replace("ss", String("0" + date.getSeconds()).slice(-2));
			txtDate = txtDate.replace("dd", String("0" + date.getDate()).slice(-2));
			//txtDate = txtDate.replace("dd", date.getDate());
			txtDate = txtDate.replace("hh", String("0" + date.getHours()).slice(-2));
			//txtDate = txtDate.replace("hh", date.getHours());
			text = text.replace(/\[date\s+(.+?)\]/, txtDate)
		}
	}
	return text;
}
if (urlMyProfile == "") {
	var elements = document.getElementsByTagName("*");
	var expr = /(^| )profile-link( |$)/;
	for (var i = 0; i < elements.length; i++)
	if (expr.test(elements[i].className)) {
		urlMyProfile = elements[i].href;
		break;
	}
}

function getPostUrlsForComments(json) {
	for (var i = 0; i < json.feed.entry.length; i++) {
		var entry = json.feed.entry[i];
		var href;
		for (var k = 0; k < entry.link.length; k++) {
			if (entry.link[k].rel == 'alternate') {
				href = entry.link[k].href;
				break;
			}
		}
		urlToTitle[href] = entry.title.$t;
	}
}	

function showRecentComments(json) {
	var postHandled = {};
	var j = 0;
	if (numPerPost) {
		while (numPerPost < numRecentComments) {
			for (var i = 0; i < json.feed.entry.length; i++) {
				var entry = json.feed.entry[i];
				if (entry["thr$in-reply-to"]) {
					if (!postHandled[entry["thr$in-reply-to"].href]) postHandled[entry["thr$in-reply-to"].href] = 1;
					else postHandled[entry["thr$in-reply-to"].href]++;
					if (postHandled[entry["thr$in-reply-to"].href] <= numPerPost) j++;
				}
			}
			if (j >= numRecentComments) break;
			numPerPost++;
			j = 0;
			postHandled = {};
		}
		if (numRecentComments == numPerPost) numPerPost = 0;
	}
	postHandled = {};
	j = 0;
	for (var i = 0; j < numRecentComments && i < json.feed.entry.length; i++) {
		var entry = json.feed.entry[i];
		if (numPerPost && postHandled[entry["thr$in-reply-to"].href] && postHandled[entry["thr$in-reply-to"].href] >= numPerPost) continue;
		if (entry["thr$in-reply-to"]) {
			if (!postHandled[entry["thr$in-reply-to"].href]) postHandled[entry["thr$in-reply-to"].href] = 1;
			else postHandled[entry["thr$in-reply-to"].href]++;
			j++;
			var href = '';
			for (var k = 0; k < entry.link.length; k++) {
				if (entry.link[k].rel == 'alternate') {
					href = entry.link[k].href;
					break;
				}
			}
			if (href == '') {
				j--;
				continue;
			}
			var hrefPost = href.split("?")[0];
			var comment = "";
			if ("content" in entry) comment = entry.content.$t;
			else comment = entry.summary.$t;
			comment = comment.replace(/<br[^>]*>/ig, " ");
			comment = comment.replace(/<\S[^>]*>/g, "");
			var postTitle = "";
			if (urlToTitle[hrefPost]) postTitle = urlToTitle[hrefPost];
			else {
				postTitle = hrefPost.split("/")[5].split(".html")[0].replace(/_\d{2}$/, "");
				postTitle = postTitle.replace(/-/g, " ");
				postTitle = postTitle[0].toUpperCase() + postTitle.slice(1);
			}
			if (maxPostTitleChars && postTitle.length > maxPostTitleChars) {
				postTitle = postTitle.substring(0, maxPostTitleChars);
				var indexBreak = postTitle.lastIndexOf(" ");
				postTitle = postTitle.substring(0, indexBreak) + "...";
			}

			var authorName = entry.author[0].name.$t
			var authorUri = ""
			if (entry.author[0].uri && entry.author[0].uri.$t != "") authorUri = entry.author[0].uri.$t;

			var avaimg = urlAnoAvatar;
			var bloggerprofile = "http://www.blogger.com/profile/";
			if (trueAvatars && authorUri.substr(0, bloggerprofile.length) == bloggerprofile) avaimg = entry.author[0].gd$image.src;
			else {
				var parseurl = document.createElement('a');
				if (authorUri != "") {
					parseurl.href = authorUri;
					avaimg = 'http://www.google.com/s2/favicons?domain=' + parseurl.hostname;
				}
			}
			if (authorUri == urlMyProfile && urlMyAvatar != "") avaimg = urlMyAvatar;
			if (authorName == 'Anonymous' && txtAnonymous != '' && avaimg == urlAnoAvatar) authorName = txtAnonymous;
        var imgcode = '<img title="' + authorName + '" src="' + avaimg.replace(/\/s[0-9]+/, "/s32") + '" />';
			if (authorUri != "") imgcode = '<a href="' + authorUri + '">' + imgcode + '</a>';

			var clsAdmin = "";
			if (authorName == 'Taufik Nurrohman' || authorName == 'Tukang Pos') clsAdmin = " recent-comment-admin";

			var datePart = entry.published.$t.match(/\d+/g); // assume ISO 8601
			var cmtDate = new Date(datePart[0], datePart[1] - 1, datePart[2], datePart[3], datePart[4], datePart[5]);

			var txtHeader = txtWrote;
			if (txtWrote.indexOf('[') == -1) txtHeader = authorName + ' ' + txtWrote;
			else txtHeader = replaceVars(txtHeader, authorName, postTitle, cmtDate);

			var tooltip = replaceVars(txtTooltip, authorName, postTitle, cmtDate);

			document.write('<li class="item' + clsAdmin + '">');
			document.write('<div class="face">' + imgcode + '</div>');
			if (comment.length < maxCommentChars) document.write('<div class="post"><strong><a href="' + authorUri + '" target="_blank">' + authorName + '</a> &#9658; <a href="' + href + '" target="_parent">' + tooltip + '</a></strong><div class="recent-comment-body' + clsAdmin + '">' + comment + '</div></div>');
			else {
				comment = comment.substring(0, maxCommentChars);
				var indexBreak = comment.lastIndexOf(" ");
				comment = comment.substring(0, indexBreak);
				document.write('<div class="post"><strong><a href="' + authorUri + '" target="_blank">' + authorName + '</a> &#9658; <a href="' + href + '" target="_parent">' + tooltip + '</a></strong><div class="recent-comment-body' + clsAdmin + '">' + comment + '... <a href="' + href + '" target="_blank">' + txtMore + '</div></div>');
				if (txtMore != "") {
					var moretext = replaceVars(txtMore, authorName, postTitle, cmtDate);
					document.write('');
				}
			}
			document.write('</li>');
		}
	}
}
function pageTo(to) {
	var wl = window.location, index, next, prev;
	if(wl.search) {
		index = parseInt(wl.search.substr(5));
		next  = index + 1;
		prev  = index - 1;
	} else {
		var next = 2;
	}
	if(to == "prev") {
		wl.search = "?page"+prev;
	} else {
		wl.search = "?page"+next;
	}
  document.body.style.display="none";
	return false;
}
</script>

</head>
<body>

<script type="text/javascript">
	if(window.location.search && window.location.search !== "?page1") {
		var currentPage = numRecentComments*(parseInt(window.location.search.substr(5))-1);
	} else {
		var currentPage = 1;
	}

	document.write('<ul class="cm-outer">');
		if (getTitles) {
			document.write('<script type="text/javascript" src="http://x7t.blogspot.com/feeds/posts/summary?redirect=false' + maxResultsPosts + '&start-index=' + currentPage + '&alt=json-in-script&callback=getPostUrlsForComments"></' + 'script>');
		}
		document.write('<script type="text/javascript" src="http://x7t.blogspot.com/feeds/comments/default?redirect=false' + maxResultsComments + '&start-index=' + currentPage + '&alt=json-in-script&callback=showRecentComments"></' + 'script>');
	document.write('</ul><nav>');

	if(window.location.search && window.location.search !== "?page1") {
		document.write('<a href="javascript:pageTo(\'prev\');">sebelumnya</a> - ');
	}	document.write('<a href="javascript:pageTo(\'next\');">berikutnya</a></nav>');
</script>

</body>
</html>